#ifndef UTIL_TEST_CRASH_H
#define UTIL_TEST_CRASH_H

#include <wx/menu.h>
#include <wx/window.h>

namespace util {

/// Helper class for testing crash handling. This class creates the part of the Test menu responsible
/// for generating several sorts of crashes.
class TestCrash
{
public:

    //////////////////////////////////////////////////////////////////////////
    // INITIALIZATION
    //////////////////////////////////////////////////////////////////////////

    TestCrash(wxWindow* window);
    virtual ~TestCrash();

    wxMenu* getMenu() const;

private:

    //////////////////////////////////////////////////////////////////////////
    // MEMBERS
    //////////////////////////////////////////////////////////////////////////

    wxWindow* mWindow;
    wxMenu* mMenu;

    //////////////////////////////////////////////////////////////////////////
    // GUI EVENTS
    //////////////////////////////////////////////////////////////////////////

    void onCrashTest(wxCommandEvent& event);
};

} // namespace 

#endif // UTIL_TEST_CRASH_H
